浮點數float, double
浮點數可分為單精度、倍精度、與長倍精度浮點數。這三個浮點數的差異在數值的有效位數與數值範圍。
float宣告功能為單精位浮點數,儲存空間為4位元組。
double宣告功能為倍精位浮點數,儲存空間為8位元組。
long double宣告功能為長倍精度浮點數,儲存空間為8位元組。
下面範例敘述,float num0 是宣告浮點數但未指定變數的初值,float pil = 3.14159f,f表示將常數數值限定為浮點數初值為3.14159f是指定pil的初值,若省略f則有些編譯器會出現警告。
float num0;
float pil = 3.14159f;
float value2 = 4.5e+16f;
double pi3 = 3.141592653;
double value4 = 4.5e+101;
練習
#include <iostream>
using namespace std;
const float PI = 3.14159f; //宣告函數PI = 3.14159
int main(int argc, char** argv)
{
char str1[] = "單精度 pi = "; //宣告字串str1
char str2[] = "倍精度 val = "; //宣告字串 str2
double val = 4.5e+101; //宣告val = 4.5e+101;
cout << str1 << PI << str2 << val << endl;
system("PAUSE");
return 0;
}
輸出結果:
邏輯資料bool
邏輯數值:用來表示運算式的ture or false,數值1或ture表示真,數值0或false表示假。
範例:
bool fontBold 宣告邏輯變數但未指定變數的數值,bool fontitalic = ture指定為ture。
bool fontBold //宣告邏輯變數但未給予初值
bool fontitalic = ture; //fontItalic = ture
bool練習
#include <iostream>
using namespace std;
int main(int argc, char** argv)
{
bool bValue = true;
cout << "邏輯預設值 = " << bValue << endl;
bValue = false;
cout << "梗改預設值 = " << bValue << endl;
system("PAUSE");
return 0;
}
輸出結果:
取得型態大小sizeof
#include <iostream>
using namespace std;
int main(int argc, char** argv)
{
double dType;
cout << "int 型態的位元組數 = "
<< sizeof(int) << "bytes\n";
cout << "short 型態的位元組數 = "
<< sizeof(short) << "bytes\n";
cout << "bool 型態的位元組數 = "
<< sizeof(bool) << "bytes\n";
cout << "dType 型態的位元組數 = "
<< sizeof(dType) << "bytes\n";
system("PAUSE");
return 0;
}
輸出結果: